package com.wiloon.java.network.network.netty.file.server.upload;//package com.wiloon.java8x.network.netty.file.server.upload;
//
//import io.netty.bootstrap.ServerBootstrap;
//import io.netty.channel.ChannelFuture;
//import io.netty.channel.ChannelOption;
//import io.netty.channel.EventLoopGroup;
//import io.netty.channel.nio.NioEventLoopGroup;
//import io.netty.channel.socket.nio.NioServerSocketChannel;
//import org.apache.kahadb.util.Scheduler;
//
///**
// * Created by wiloon on 3/20/16;
// */
//public class DBServer extends Thread {
//    static String host = "0.0.0.0";
//    static int port = 8080;
//
//    //单实例
//    private static DBServer dbServer = null;
//
//    //定时调度的周期实例
//    private static Scheduler sched = null;
//
//    private EventLoopGroup bossGroup = null;
//    private EventLoopGroup workerGroup = null;
//
//    //创建实例
//    public static DBServer newBuild() {
//        if (dbServer == null) {
//            dbServer = new DBServer();
//        }
//        return dbServer;
//    }
//
//    public void run() {
//        try {
//            startServer();
//        } catch (Exception e) {
//            System.out.println("数据服务启动出现异常：" + e.toString());
//            e.printStackTrace();
//        }
//    }
//
//    private void startServer() throws Exception {
//        bossGroup = new NioEventLoopGroup();
//        workerGroup = new NioEventLoopGroup();
//
//        try {
//            ServerBootstrap b = new ServerBootstrap();
//
//            b.group(bossGroup, workerGroup);
//
//            b.option(ChannelOption.TCP_NODELAY, true);
//            b.option(ChannelOption.SO_TIMEOUT, 60000);
//            b.option(ChannelOption.SO_SNDBUF, 1048576 * 200);
//
//            b.option(ChannelOption.SO_KEEPALIVE, true);
//
//            b.channel(NioServerSocketChannel.class);
//            b.childHandler(new DBServerInitializer());
//
//            // 服务器绑定端口监听
//            ChannelFuture f = b.bind(host, port).sync();
//
//            System.out.println("数据服务：" + host + "启动完成...");
//            // 监听服务器关闭监听
//            f.channel().closeFuture().sync();
//        } finally {
//            bossGroup.shutdownGracefully();
//            workerGroup.shutdownGracefully();
//        }
//    }
//}